home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / ugly174.zip / RSB3UGLY.MRG < prev    next >
Text File  |  1992-07-05  |  43KB  |  1,062 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against RELEASE\RBBSSUB3.BAS to produce RBBSSUB3.BAS
  3. * RELEASE\RBBSSUB3.BAS:  Date 6-20-1992  Size 129071 bytes
  4. * ------------[ Created 07-04-1992 19:43:38 ]------------
  5. * REPLACING old line(s) by new
  6. 20705 ' $SUBTITLE: 'UpdtUpload -- Updates upload directory'
  7. ' $PAGE
  8. '  NAME    -- UpdtUpload
  9. '
  10. '  INPUTS  -- PARAMETER             MEANING
  11. '             ZFileName$
  12. '             ZUpldDir$
  13. '             ZFileNameHold$
  14. '             ZShareIt
  15. '             ZFMSDirectory$
  16. '             ZWasQ!
  17. '             ZSecsUsedSession!
  18. '
  19. '  OUTPUTS -- ZBytesInFile#
  20. '             ZSecsPerSession!
  21. '
  22. '  PURPOSE -- Upon a successful upload, add entry to the upload
  23. '             directory and give any session time credit.
  24. '
  25.       SUB UpdtUpload (ZCategoryName$(1),ZCategoryCode$(1), LinesInDesc) STATIC
  26.       IF ZGetExtDesc THEN _
  27.          GOTO 20723
  28.       GOSUB 20734
  29.       CALL TimeRemain (MinsRemaining)
  30.       IF ZPrivateDoor THEN _
  31.          WasX! = ZUpldTimeFactor! * ZWasQ! _
  32.       ELSE WasX! = ZUpldTimeFactor! * (ZSecsUsedSession! - ZWasQ!)
  33.       CALL BreakFileName (ZFileName$,Pre$,Body$,Ext$,ZFalse)
  34.       WasX$ = ZDiskForDos$ + "T" + Ext$ + ".BAT"
  35.       CALL FindIt (WasX$)
  36.       IF NOT ZOK THEN _
  37.          GOTO 20708
  38. * ------[ first line different ]------
  39.       CALL QuickTPut1 ("Testing Upload.  Please Wait...") : _        ' UG070501
  40.       CALL ReadDir (2,1)
  41.       ZGSRAra$(2) = ZNodeWorkDrvPath$ + "VCHK" + ZNodeFileID$
  42.       IF EOF(2) THEN _
  43.          WasX$ = ZOutTxt$ : _
  44.          ZGSRAra$(1) = ZFileName$ _
  45.       ELSE WasX$ = WasX$ + " " + _
  46.                    ZFileName$ + " " + ZGSRAra$(2)
  47.       CALL ShellExit (WasX$)
  48.       CALL FindIt (ZGSRAra$(2))
  49.       IF ZOK THEN _
  50.          IF LOF(2) > 2 THEN _
  51.             ZBytesInFile# = 0.0 : _
  52.             WasX$ = "Deleting BAD Upload " + ZFileNameHold$ + "." : _' UG070501
  53.             CALL QuickTPut1 (WasX$) : _
  54.             CALL UpdtCalr (WasX$,2) : _
  55.             CALL KillWork (ZFileName$) : _
  56.             EXIT SUB
  57. * REPLACING old line(s) by new
  58. 20708 WasX$ = ZDiskForDos$ + "C" + Ext$ + ZDefaultExtension$ + ".BAT"
  59.       CALL FindIt (WasX$)
  60.       IF NOT ZOK THEN _
  61.          GOTO 20709
  62.       ZOutTxt$ = "Converting"
  63.       IF Ext$ = ZDefaultExtension$ THEN _
  64.          ZOutTxt$ = "Re-" + ZOutTxt$
  65. * ------[ first line different ]------
  66.       CALL QuickTPut1 (ZOutTxt$ + " Upload to "+ZDefaultExtension$+".  Please Wait...") ' UG070501
  67.       CALL ReadDir (2,1)
  68.       IF EOF(2) THEN _
  69.          WasX$ = ZOutTxt$
  70.       ZGSRAra$(1) = ZFileName$
  71.       CALL BreakFileName (ZFileName$,Pre$,Body$,Ext$,ZTrue)
  72.       ZFileNameHold$ = Body$ + "." + ZDefaultExtension$
  73.       ZUserIn$(0) = ZFileName$
  74.       ZFileName$ = Pre$ + ZFileNameHold$
  75.       CALL ShellExit (WasX$ + " " + Body$ + " " + ZNodeID$)
  76.       CALL FindIt (ZFileName$)
  77.       IF NOT ZOK THEN _
  78.          ZFileName$ = ZGSRAra$(1) : _
  79.          CALL FindIt (ZFileName$) : _
  80.          ZFileNameHold$ = Body$ + Ext$ : _
  81.          IF ZOK THEN _
  82.             GOTO 20709
  83.       GOSUB 20736
  84. * REPLACING old line(s) by new
  85. * ------[ first line different ]------
  86. 20709 CALL QuickTPut1 ("Upload Successful.")                         ' UG070501
  87.       WasX$ = DATE$
  88.       ZWasZ$ = LEFT$(WasX$,6) + _
  89.            RIGHT$(WasX$,2)
  90.       StrewTo$ = ""
  91.       UCat$ = ""
  92. * REPLACING old line(s) by new
  93. * ------[ first line different ]------
  94. 20710 CALL QuickTPut1 ("Please Describe " + ZFileNameHold$ + _
  95.            " (Begin with '/' if for SysOp Only)")                    ' UG070501
  96.       CALL QuickTPut1 (LEFT$(" |----+--(Min---+---2+0---+---3+0---+---4+0---+-", _
  97.                  ZMaxDescLen - 4) + "--Max)")                        ' UG070501
  98.       CALL QuickTPut ("? ",0)
  99.       ZOutTxt$ = ""
  100.       ZSubParm = 1
  101.       ZParseOff = ZTrue
  102.       CALL UglyTGet                                                  ' UG070501
  103.       CALL Carrier
  104.       IF ZSubParm = -1 THEN _
  105.          ZUserIn$ = "<description unavailable>": _
  106.          GOTO 20712
  107.       IF LEN(ZUserIn$) > ZMaxDescLen OR LEN(ZUserIn$) < 10 THEN _
  108.          CALL QuickTPut1 ("10 Chars Min," + STR$(ZMaxDescLen) + " Max.") : _ ' UG070501
  109.          GOTO 20710
  110. * REPLACING old line(s) by new
  111. 20717 CALL FindItX (ZNodeWorkFile$,7)
  112.       ZUserIn$ = Desc$
  113.       WasX$ = DATE$
  114.       ZWasZ$ = LEFT$(WasX$,6) + _
  115.            RIGHT$(WasX$,2)
  116.       ZWasEN$ = ZPersonalDir$
  117.       NumPersonals = 0
  118.       IF NOT ZOK THEN _
  119.          GOTO 20718
  120.       UserFileIndexSave = ZUserFileIndex
  121.       UserRecordHold$ = ZUserRecord$
  122.       WHILE NOT EOF(7)
  123.          CALL ReadParmsX (7,ZWorkAra$(),2,1)
  124.          IF LEFT$(ZWorkAra$(1),4) <> "ALL " AND ZWorkAra$(1) <> "ALL" THEN _
  125.             NumPersonals = NumPersonals + 1 : _
  126.             UCat$ = ZWorkAra$(1) : _
  127.             GOSUB 20728 : _
  128.             RcvrRecNum = VAL (ZWorkAra$(2)) : _
  129. * ------[ first line different ]------
  130.             CALL SetUserFlag (RcvrRecNum,4096,"File")                ' UG070501
  131.       WEND
  132.       CLOSE 7
  133.       IF NumPersonals > 0 THEN _
  134.          ZUserFileIndex = UserFileIndexSave : _
  135.          LSET ZUserRecord$ = UserRecordHold$ : _
  136.          GOTO 20723
  137. * REPLACING old line(s) by new
  138. * ------[ first line different ]------
  139. 20720 ZOutTxt$= "Put Upload in What File Category (D)efault, H)elp)" ' UG070501
  140.       ZSubParm = 1                                                   ' UG070501
  141.       CALL UglyTGet                                                  ' UG070501
  142.       CALL AraAllCaps (ZUserIn$(),1)
  143.       IF ZSubParm = -1 OR ZUserIn$(1) = "D" THEN _
  144.          UCat$ = ZDefaultCatCode$ : _
  145.          GOTO 20722
  146.       IF ZWasQ = 0 THEN _
  147.          GOTO 20719
  148.       IF ZUserIn$(1) = "H" OR _
  149.          ZUserIn$(1) = "*" OR _
  150.          ZUserIn$(1) = "?" THEN _
  151.          GOTO 20719
  152.       CALL SearchArray (ZUserIn$(1),ZCategoryName$(),ZNumCategories,Found)
  153.       IF Found > 0 THEN _
  154.          UCat$ = ZCategoryCode$(Found) : _
  155.          IF LEN(UCat$) > 0 AND LEN(UCat$) < 4 AND INSTR(UCat$,",") = 0 THEN _
  156.             GOTO 20722
  157.       UCat$ = ""
  158.       IF NOT ZLimitSearchToFMS THEN _
  159.          StrewTo$ = ZDirPath$ + _
  160.                      ZUserIn$(1) + _
  161.                      "." + _
  162.                      ZDirExtension$ : _
  163.          CALL FindIt (StrewTo$) : _
  164.          IF ZOK THEN _
  165.             GOTO 20722 _
  166.          ELSE CALL WordInFile (ZUpcatHelp$,ZUserIn$(1),ZOK) : _
  167.               IF ZOK THEN _
  168.                  GOTO 20722
  169.       StrewTo$ = ""
  170.       CALL QuickTPut2 ("Unknown Category.  Try Again.")              ' UG070501
  171.       GOTO 20719
  172. * REPLACING old line(s) by new
  173. 20722 IF ZUserSecLevel >= ZAskExtendedDesc AND _
  174.          ZMaxExtendedLines > 0 AND ZSubParm <> -1 THEN _
  175. * ------[ first line different ]------
  176.          ZOutTxt$ = "Add an Extended Description ([Y],N)" : _        ' UG070501
  177.          ZTurboKey = -ZTurboKeyUser : _
  178.          ZSubParm = 1 : _
  179.          CALL UglyTGet : _                                           ' UG070501
  180.          IF ZSubParm <> -1 THEN _
  181.             IF NOT ZNo THEN _
  182.                ZGetExtDesc = ZTrue : _
  183.                EXIT SUB
  184. * REPLACING old line(s) by new
  185. 20727 ZWasDF$ = " >> uploaded << "
  186.       ZUplds = ZUplds + 1
  187.       ZGlobalUplds = ZGlobalUplds + 1
  188.       ZULBytes! = ZULBytes! + ZBytesInFile#
  189.       ZGlobalULBytes! = ZGlobalULBytes! + ZBytesInFile#
  190.       CALL Muzak (7)
  191.       CALL TimeRemain (MinsRemaining)
  192.       MinsToAdd = WasX! / 60
  193.       CALL ChkAddedTime (MinsToAdd)
  194.       WasX! = MinsToAdd * 60!
  195.       ZTimeCredits! = ZTimeCredits! + WasX!
  196.       ZSecsPerSession! = ZSecsPerSession! + WasX!
  197.       IF ZPrivateDoor THEN _
  198.          WasX! = (WasX! - ZWasQ!) / 60 _
  199.       ELSE WasX! = (WasX! - ZSecsUsedSession! + ZWasQ!)/60.0
  200.       WasX$ = STR$(FIX(WasX!*10.0))
  201.       WasX$ = LEFT$(WasX$,LEN(WasX$)-1) + "." + RIGHT$(WasX$,1)
  202.       IF WasX! > 1 THEN _
  203. * ------[ first line different ]------
  204.          CALL QuickTPut1 ("Upload Increased Your Time Online by"+WasX$+" Minutes.") ' UG070501
  205.       CALL QuickTPut2 ("Thanks for the Upload!")                     ' UG070501
  206.       ZGetExtDesc = ZFalse
  207.       ZPrivateDoor = ZFalse
  208.       EXIT SUB
  209. * REPLACING old line(s) by new
  210. 20728 '          ---[ lock file ]---
  211.       IF ZWasEN$ = "" THEN _
  212.          RETURN
  213.       FMSFormat = ZFalse
  214.       IF (ZWasEN$ = ZFMSDirectory$ OR ZLimitSearchToFMS _
  215.           OR NumPersonals > 0 OR (ZPrivateDoor AND ZFMSDoor)) THEN _
  216.              FMSFormat = ZTrue _
  217.       ELSE CALL FindIt (ZWasEN$) : _
  218.            IF ZOK THEN _
  219.               CALL ReadDir (2,1) : _
  220.               IF ZErrCode = 0 THEN _
  221.                  FMSFormat = (LEFT$(ZOutTxt$,4) = "\FMS")
  222.       IF NOT FMSFormat THEN _
  223.          ReadBackwards = ZFalse : _
  224.          FixedLen = 0 : _
  225.          ZUserIn$ = Desc$ : _
  226.          GOTO 20729
  227. * ------[ first line different ]------
  228.       FixedLen = 34 + ZMaxDescLen
  229.       IF NumPersonals > 0 THEN _
  230.          WasX$ = "*" : _
  231.          MaxLen = ZPersonalLen _
  232.       ELSE MaxLen = 3 : _
  233.            WasX$ = ""
  234.       UCat$ = LEFT$(UCat$,MaxLen)
  235.       UCat$ = UCat$ + SPACE$(MaxLen - LEN(UCat$))
  236.       ZUserIn$ = Desc$ + _
  237.                  SPACE$(ZMaxDescLen - LEN(Desc$)) + _
  238.                  UCat$ + WasX$
  239.       ReadBackwards = ZTrue
  240.       CALL FindIt (ZWasEN$)
  241.       IF ZOK THEN _
  242.          CALL ReadDir (2,1) : _
  243.          IF ZErrCode = 0 THEN _
  244.             ReadBackwards = (INSTR(ZOutTxt$," TOP ") = 0)
  245. * REPLACING old line(s) by new
  246. 21110 IF ZLibDiskChar$ = "0000" THEN _
  247.          ZOutTxt$ = "No Library disk currently selected" _
  248.       ELSE ZOutTxt$ = "Library disk " + _
  249.                 ZLibDiskChar$ + _
  250.                 " selected - " + _
  251.                 DiskTitle$
  252.       CALL QuickTPut1 (ZOutTxt$)
  253.       IF LibDiskArc$ = "" THEN _
  254.          EXIT SUB
  255.       IF INSTR(ZLibArcProgram$,"ARC") THEN _
  256.          Extension$ = "ARC" _
  257.       ELSE IF INSTR(ZLibArcProgram$,"ZIP") THEN _
  258.          Extension$ = "ZIP" _
  259.       ELSE IF INSTR(ZLibArcProgram$,"LHA") THEN _
  260.          Extension$ = "LZH" _
  261.       ELSE IF INSTR(ZLibArcProgram$,"ARJ") THEN _
  262.          Extension$ = "ARJ" _
  263.       ELSE Extension$ = ZDefaultExtension$
  264.       FOR LibDisplayCount = 0 TO LibLoopCount - 1
  265.          IF LibSubdirName$(LibDisplayCount) <> "" THEN _
  266.             CALL QuickTPut1 (LibSubdirName$(LibDisplayCount) + _
  267. * ------[ first line different ]------
  268.                        "." + Extension$ + " is Ready for Transmission.") ' UG070501
  269.       NEXT
  270.       EXIT SUB
  271. * REPLACING old line(s) by new
  272. 21115 IF ZWasQ = 1 THEN _
  273. * ------[ first line different ]------
  274.          ZOutTxt$ = "Change Library Disk from " + _                  ' UG070501
  275.               ZLibDiskChar$ + _
  276.               " to (1 -" + _
  277.               STR$(ZLibMaxDisk) + _
  278.               ")" : _
  279.          ZSubParm = 1 : _
  280.          CALL UglyTGet : _                                           ' UG070501
  281.          IF ZSubParm = -1 THEN _
  282.             EXIT SUB _
  283.          ELSE IF ZWasQ = 0 THEN _
  284.                  ZLibDiskChar$ = "0000" : _
  285.                  ChdirLib$ = ZLibDrive$ + _
  286.                                   "\" : _
  287.                  GOTO 21126
  288. * REPLACING old line(s) by new
  289. 21130 IF ZLibType <> 1 THEN _
  290.          EXIT SUB
  291.       CALL SkipLine(1)
  292. * ------[ first line different ]------
  293.       ZOutTxt$ = "The PC-SIG Library File That You Are About to"     ' UG070501
  294.       CALL QuickTPut1 (ZOutTxt$)
  295.       ZOutTxt$ = "Download Can Also be Ordered as Disk " + _         ' UG070501
  296.            ZLibDiskChar$
  297.       CALL QuickTPut1 (ZOutTxt$)
  298.       ZOutTxt$ = "from PC-SIG, 1030D East Duane Ave. Sunnyvale, Ca. 94086"
  299.       CALL QuickTPut (ZOutTxt$,2)
  300.       EXIT SUB
  301. * REPLACING old line(s) by new
  302. 21140 IF ZLibDiskChar$ = "0000" THEN _
  303. * ------[ first line different ]------
  304.          CALL QuickTPut1 ("No Library Disk Selected.") : _           ' UG070501
  305.          EXIT SUB
  306.       ZOutTxt$ = "Archive files in Library Disk - " + _
  307.            ZLibDiskChar$ + _
  308.            " for Download (Y,[N])"                                   ' UG070501
  309.       ZSubParm = 1                                                   ' UG070501
  310.       CALL UglyTGet                                                  ' UG070501
  311.       IF NOT ZLocalUser THEN _
  312.          IF ZSubParm = -1 THEN _
  313.             EXIT SUB
  314.       IF NOT ZYes THEN _
  315.          EXIT SUB
  316. * REPLACING old line(s) by new
  317. * ------[ first line different ]------
  318. 21150 CALL QuickTPut1 ("Work/RAM Disk Purged.  Archiving with " + _
  319.                   ZLibArcProgram$ + _
  320.                   ".  Please Wait...")                               ' UG070501
  321.       REDIM LibSubdirName$(10)
  322.       LibSubdirChar$ = ""
  323.       LibLoopCount = 0
  324.       GOSUB 21157
  325.       ZOutTxt$ = "Contents of Library disk - " + _
  326.            ZLibDiskChar$ + _
  327.            " is Now Archived for Download."                          ' UG070501
  328.       CALL QuickTPut1 (ZOutTxt$)
  329.       ZOutTxt$ = "Searching for Subdirectories..."                   ' UG070501
  330.       CALL QuickTPut1 (ZOutTxt$)
  331.       GOSUB 21158
  332.       LibDiskArc$ = ZLibDiskChar$
  333. '
  334. ' SEARCH AND ARCHIVE ANY SUBDIRECTORIES
  335. '
  336.       Treedir$ = ZLibWorkDiskPath$ + _
  337.                  ZLibNodeID$ + _
  338.                  "DKDIR.LST"
  339.       DirCmd$ = "DIR " + _
  340.                 ZLibDrive$ + _
  341.                 " | FIND " +  _
  342.                 CHR$(34) + _
  343.                 " <DIR> " + _
  344.                 CHR$(34) + _
  345.                 "  > " + _
  346.                 Treedir$
  347. * REPLACING old line(s) by new
  348. 21153 CALL OpenWork (2,Treedir$)
  349.       LibSubdirCount = 0
  350.       WHILE NOT EOF(2)
  351.          LINE INPUT #2, Dirrec$
  352.          IF LEFT$(Dirrec$,1) <> "." THEN _
  353.             LibSubdirCount = LibSubdirCount + 1 : _
  354.             LibSubdirName$(LibSubdirCount) = _
  355.             LEFT$(Dirrec$,8)
  356.       WEND
  357.       CLOSE 2
  358.       LibLoopCount = 1
  359.       IF LibSubdirCount = 0 THEN _
  360.          GOTO 21156
  361.       ZOutTxt$ = STR$(LibSubdirCount) + _
  362. * ------[ first line different ]------
  363.            " Subdirectories on Library Disk - " + _                  ' UG070501
  364.            ZLibDiskChar$
  365.       CALL QuickTPut1 (ZOutTxt$)
  366.       FOR LibLoopCount = 1 TO LibSubdirCount
  367.          IF NOT ZLocalUser THEN _
  368.             CALL Carrier : _
  369.             IF ZSubParm THEN _
  370.                GOTO 21155
  371.          LibSubdirChar$ = MID$("ABCDEFGHI",LibLoopCount,1)
  372.          ZOutTxt$ = "Creating " + _
  373.               ZLibNodeID$ + _
  374.               "DK" + _
  375.               ZLibDiskChar$ + _
  376.               LibSubdirChar$ + "." + Extension$ + _
  377.               " using " + ZLibArcProgram$
  378.          CALL QuickTPut1 (ZOutTxt$)
  379.          CHDIR ChdirLib$ + _
  380.                "\" + _
  381.                LibSubdirName$(LibLoopCount)
  382.          GOSUB 21157
  383.          ZOutTxt$ = "Disk - " + _
  384.               ZLibDiskChar$ + _
  385.               "; Subdirectory" + _
  386.               " -" + _
  387.               STR$(LibLoopCount) + _
  388.               " is Archived for Download."                           ' UG070501
  389.          CALL QuickTPut1 (ZOutTxt$)
  390.          GOSUB 21158
  391. * REPLACING old line(s) by new
  392. 21604 ZStopInterrupts = ZTrue
  393.       IF Index = 3 THEN _
  394.          IF ZAnsIndex < ZLastIndex THEN _
  395.             GOTO 21605
  396.       CALL QuickTPut1 (WasX$)
  397.       CALL BufString (ZTransferOption$,4096,WasX)
  398. * ------[ first line different ]------
  399.       CALL QuickTPut (MID$("?:",1-ZTurboKeyUser,1)+" ",0)            ' UG070501
  400. * REPLACING old line(s) by new
  401. 21605 ZOutTxt$ = ""
  402.       ZTurboKey = -ZTurboKeyUser
  403.       ZMacroMin = 2
  404.       ZSubParm = 1
  405.       ZSuspendAutoLogoff = ZTrue
  406.       ZStackC = ZTrue
  407.       IF Index = 3 THEN _
  408. * ------[ first line different ]------
  409.          CALL UglyPopCmdStack : _                                    ' UG070501
  410.          WasX = ZAnsIndex _
  411.       ELSE ZSubParm = 1 : _
  412.            CALL UglyTGet : _                                         ' UG070501
  413.            WasX = 1
  414.       ZSuspendAutoLogoff = ZFalse
  415.       IF ZSubParm = -1 THEN _
  416.          EXIT SUB
  417.       IF ZWasQ = 0 THEN _
  418.          GOTO 21604
  419. * REPLACING old line(s) by new
  420. 31399 IF ZFunctionKey = 22 THEN _
  421.          CALL SkipLine (2) : _
  422. * ------[ first line different ]------
  423.          CALL QuickTPut1 ("Sorry, SysOp Needs the System Now.") : _  ' UG070501
  424.          CALL DelayTime (8 + ZBPS) : _
  425.          ZSubParm = -6 : _
  426.          GOTO 33970
  427.       CALL QuickTPut1 (ZFirstName$ + ", Goodbye and DON'T Call Back!") ' UG070501
  428.       CALL DelayTime (8 + ZBPS) : _
  429.       IF ZUserFileIndex < 1 THEN _
  430.          ZSubParm = -6 : _
  431.          GOTO 33970
  432.       ZUserSecLevel = ZMinLogonSec - 1
  433.       CALL DenyAccess
  434.       ZSubParm = -7
  435.       GOTO 33970
  436. '
  437. '
  438. ' * F2 - COMMAND FROM LOCAL KEYBOARD (SYSOP EXIT TO DOS AND RETURN)
  439. '
  440. '
  441. * REPLACING old line(s) by new
  442. 32000 IF NOT ZLocalUser THEN _
  443. * ------[ first line different ]------
  444.          CALL SkipLine (2) : _                                       ' UG070501
  445.          CALL QuickTPut1 ("SysOp Exiting to DOS.  Please Wait...") : _ ' UG070501
  446.          ZFunctionKey = 0 : _
  447.          CALL DelayTime (3)
  448.       CALL ShellExit (ZDiskForDos$ + "COMMAND")
  449.       'SHELL ZDiskForDos$ + _
  450.       '      "COMMAND"
  451.       CLS
  452.       IF NOT ZLocalUser THEN _
  453.          CALL Carrier : _
  454.          IF ZSubParm = -1 THEN _
  455.             GOTO 33970
  456.       ZSubParm = 2
  457.       CALL Line25
  458.       CALL QuickTPut1 ("SysOp Back from DOS.  Returning Control to You.") ' UG070501
  459.       ZCommPortStack$ = ZCarriageReturn$
  460.       GOTO 33970
  461. '
  462. '
  463. ' * F3 - COMMAND FROM LOCAL KEYBOARD (Printer Toggle)
  464. '
  465. '
  466. * REPLACING old line(s) by new
  467. 33160 CALL UpdtCalr ("Sysop began chat",1)
  468.       ZPageStatus$ = ""
  469. * ------[ first line different ]------
  470.       CALL SkipLine (2)                                              ' UG070501
  471.       ZOutTxt$ = ZSysopFirstName$ + " " + ZSysopLastName$            ' UG070501
  472.       CALL NameCaps(ZOutTxt$)                                        ' UG070501
  473.       CALL QuickTPut1 ("Hi, This is " + _
  474.            ZOutTxt$ + _
  475.            ".  Sorry to Break in to Chat, But...")                   ' UG070501
  476.       CALL TimeBack (1)
  477.       CALL SysopChat
  478.       CALL TimeBack (2)
  479.       ZCommPortStack$ = CHR$(13)
  480.       GOTO 33155
  481. '
  482. '
  483. ' * UP / CTRL-UP: INCREASE THE ON-LINE USER'S SECURITY BY ONE / FIVE
  484. '
  485. '
  486. * REPLACING old line(s) by new
  487. 41010 ' $SUBTITLE: 'TimeRemain - calculates time remaining in a session'
  488. ' $PAGE
  489. '
  490. '  NAME    -- TimeRemain
  491. '
  492. '  INPUTS  -- PARAMETER                 MEANING
  493. '             ZUserLogonTime!          WHEN DID THE CALLER GET HERE
  494. '             ZSecsPerSession!         HOW LONG MAY THE CALLER STAY ON
  495. '             ZTimeToDropToDos!        WHEN ARE WE DOING OUR DAILY EVENT
  496. '             ZBypassTimeCheck         DO WE CARE HOW LONG THEY CAN STAY
  497. '
  498. '  OUTPUTS -- PARAMETER                 MEANING
  499. '             MinsRemaining            TIME IN MINUTES LEFT IN SESSION
  500. '             ZSecsUsedSession!        TIME USED IN SECONDS
  501. '
  502.       SUB TimeRemain (MinsRemaining) STATIC
  503.       TOA! = FRE("A")
  504.       IF ZBypassTimeCheck THEN _
  505.          MinsRemaining = ZSecsPerSession! / 60 : _
  506.          EXIT SUB
  507.       CALL CheckTime (ZUserLogonTime!, ZSecsUsedSession!, 2)
  508.       IF ZTimeToDropToDos! = 0 OR _
  509.          ZOldDate$ = DATE$ THEN _
  510.          GOTO 41020
  511.       CALL CheckTime (ZTimeToDropToDos!, HowMuchTimeLeft!, 1)
  512.       IF HowMuchTimeLeft! < -60 THEN _
  513.          HowMuchTimeLeft! = (HowMuchTimeLeft! * -1) + 43200
  514.       IF (ZSecsPerSession! - ZSecsUsedSession!) > HowMuchTimeLeft! THEN _
  515.          ZSecsPerSession! = HowMuchTimeLeft! + ZSecsUsedSession! : _
  516.          IF NOT ToldShort THEN _
  517.             ToldShort = ZTrue : _
  518. * ------[ first line different ]------
  519.             ZOutTxt$ = "Session Time Shortened to" + _
  520.                 STR$(INT((ZSecsPerSession! - ZSecsUsedSession!) / 60)) + _
  521.                 " Minutes Due to a Scheduled Event." : _             ' UG070501
  522.             CALL RingCaller
  523. * REPLACING old line(s) by new
  524. 41032 ' $SUBTITLE: 'DispTimeRemain - Display users time remaining'
  525. ' $PAGE
  526. '
  527. '  NAME    -- DispTimeRemain
  528. '
  529. '  INPUTS  --     PARAMETER                    MEANING
  530. '              MinsRemaining
  531. '
  532. '  OUTPUTS --     PARAMETER                    MEANING
  533. '                MinsRemaining               TIME IN MINUTES LEFT IN SESSION
  534. '
  535.       SUB DispTimeRemain (MinsRemaining) STATIC
  536.       CALL TimeRemain (MinsRemaining)
  537. * ------[ first line different ]------
  538.       CALL QuickTPut1 (ZEmphasizeOff$ + STR$(MinsRemaining) + " Mins Left") ' UG070501
  539.       END SUB
  540. * REPLACING old line(s) by new
  541. * ------[ first line different ]------
  542. 43007 CALL QuickTPut1 ("Graphics for Text Files and Menus.")         ' UG070501
  543.       ZOutTxt$ = "Change from " + MID$("NAC",ZWasGR+1,1) + " to N)one, IBM A)scii, ANSI C)olor, H)elp" + ZPressEnterExpert$ ' UG070501
  544.       ZTurboKey = -ZTurboKeyUser
  545.       CALL UglyPopCmdStack                                           ' UG070501
  546.       IF ZSubParm = -1 OR ZWasQ = 0 THEN _
  547.          EXIT SUB
  548. '     IF ZWasQ = 0 THEN _                                            ' UG070501
  549. '        CALL QuickTPut2 ("Unchanged") : _                           ' UG070501
  550. '        EXIT SUB                                                    ' UG070501
  551.       CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
  552.       ZWasGR = INSTR("NAC",ZUserIn$(ZAnsIndex))
  553.       IF ZWasGR = 2 AND NOT ZEightBit THEN _
  554.          CALL QuickTPut1 ("Ascii Graphics Unavailable.  Requires N,8,1.") : _ ' UG070501
  555.          GOTO 43007
  556.       IF ZWasGR = 0 THEN _
  557.          GOTO 43006
  558.       ZWasGR = ZWasGR - 1
  559.       CALL SetGraphic (ZWasGR)
  560.       END SUB
  561. '
  562. * REPLACING old line(s) by new
  563. * ------[ first line different ]------
  564. 57002 CALL QuickTPut1 ("Available Callers Logs Are:")                ' UG070501
  565.       ZNo = ZFalse
  566.       LineCt = 0
  567.       CALL OpenWork (2, ZCallersLst$)
  568.       WHILE (NOT ZNo) AND (NOT EOF(2))
  569.          LineCt = LineCt + 1
  570.          CALL ReadDir (2,1)
  571.          Temp = INSTR(ZOutTxt$," ")
  572.          IF Temp = 0 THEN _
  573.             ZOutTxt$ = " ???" _
  574.          ELSE ZOutTxt$ = MID$(ZOutTxt$,Temp)
  575.          ZOutTxt$ = "  " + STR$(LineCt) + "  - " + ZOutTxt$
  576.          ZSubParm = 5
  577.          CALL TPut
  578.          CALL AskMore ("",ZTrue,ZTrue,WasX,ZFalse)
  579.       WEND
  580. * REPLACING old line(s) by new
  581. * ------[ first line different ]------
  582. 57003 ZOutTxt$ = "View Which Callers Log, L)ist, [Q]uit"             ' UG070501
  583.       CALL UglyPopCmdStack                                           ' UG070501
  584.       WasDF$ = ZUserIn$(ZAnsIndex)
  585.       CALL AllCaps (WasDF$)
  586.       IF WasDF$ = "L" THEN _
  587.          GOTO 57002
  588.       CALL CheckInt (WasDF$)
  589.       IF ZTestedIntValue <= 0 THEN _
  590.          GOTO 57102
  591.       IF ZTestedIntValue > NumItems THEN _
  592.             GOTO 57003
  593.       CALL OpenWork (2,ZCallersLst$)
  594.       CALL ReadDir (2, ZTestedIntValue)
  595.       ZCallersFile$ = LEFT$(ZOutTxt$,INSTR(ZOutTxt$+" "," ")-1)
  596.       CALL FindIt (ZCallersFile$)
  597.       CLOSE 2
  598.       IF NOT ZOK THEN _
  599.          Call QuickTPut2 ("Callers Log "+ZCallersFile$+" Missing.") : _ ' UG070501
  600.          ZCallersFile$ = PrevCal$ : _
  601.          GOTO 57003
  602.       IF PrevCal$ <> ZCallersFile$ THEN _
  603.          CALL SetCall
  604. * REPLACING old line(s) by new
  605. 57102 ZJumpSupported = ZFalse
  606.       IF OrigCal$ <> ZCallersFile$ THEN _                            ' RH070401
  607.          ZCallersFile$ = OrigCal$ : _
  608.          CALL SetCall
  609. * ------[ first line different ]------
  610.       CALL SkipLine (1)                                              ' UG070501
  611.       END SUB
  612. * REPLACING old line(s) by new
  613. 58110 ' $SUBTITLE: 'CheckNewBul - sub to check whether got new bulletins'
  614. ' $PAGE
  615. '
  616. '  NAME    -- CheckNewBul
  617. '
  618. '  INPUTS  --     PARAMETER           MEANING
  619. '                 LastOn$             Last DATE OF LOGON
  620. '                                   FORMAT MM/DD/YY
  621. '                 ZActiveBulletins  # OF BULLETING
  622. '                 ZBulletinPrefix$  FILESPEC FOR BULLETINS
  623. '
  624. '  OUTPUTS --     NumNewBullets   NUMBER OF NEW BULLETINS
  625. '                 NewBullets$      LIST OF NEW BULLET #'S
  626. '                 ZWasQ            WHERE Last BULLETIN STORED
  627. '                                  IN ZUserIn$()
  628. '                 ZOutTxt$()       BULLETINS #'S THAT ARE NEW
  629. '                                    (2,3,4,...)
  630. '
  631. '  PURPOSE -- Checks how many bulletins have system date
  632. '             at or later than date caller last logged on
  633. '
  634.       SUB CheckNewBul (LastOn$,NumNewBullets,NewBullets$) STATIC
  635.       IF ZExitToDoors OR ZBulletinPrefix$ = ZPrevPrefix$ THEN _
  636.          EXIT SUB
  637.       ZPrevPrefix$ = ZBulletinPrefix$
  638.       NumNewBullets = 0
  639.       NewBullets$ = ""
  640.       BaseDate# = VAL(MID$(LastOn$,4,2)) + (100 * VAL(MID$(LastOn$,1,2))) + _
  641.                    (10000# * (1900 + VAL(MID$(LastOn$,7,2))))
  642.       CALL FindIt (ZBulletinPrefix$ + ".FCK")
  643.       WasX = 0
  644. * ------[ first line different ]------
  645.       CALL QuickTPut ("Checking For New Bulletins",0)                ' UG070501
  646.       IF ZOK THEN _
  647.          WHILE NOT EOF(2) : _
  648.             INPUT #2,WasBN$ : _
  649.             GOSUB 58112 : _
  650.          WEND _
  651.       ELSE FOR WasI = 1 TO ZActiveBulletins : _
  652.               WasBN$ = MID$(STR$(WasI),2) : _
  653.               GOSUB 58112 : _
  654.            NEXT
  655.       ZWasQ = NumNewBullets + 1
  656.       CALL WipeLine(33)                                              ' UG070501
  657.       IF NumNewBullets < 1 THEN _                                    ' UG070501
  658.          CALL QuickTput1 ("There Are No New Bulletins.") : _         ' UG070501
  659.          EXIT SUB                                                    ' UG070501
  660.       ZOutTxt$ = "There Are" + STR$(NumNewBullets) + _               ' UG070501
  661.            " New Bulletins:"                                         ' UG070501
  662.       CALL QuickTPut1 (ZOutTxt$)
  663.       CALL BufString (NewBullets$,4096,WasX)
  664.       CALL SkipLine (1)
  665.       EXIT SUB
  666. * REPLACING old line(s) by new
  667. 58150 ' $SUBTITLE: 'CountNewFiles - sub to count how many files new'
  668. ' $PAGE
  669. '
  670. '  NAME    -- CountNewFiles
  671. '
  672. '  INPUTS  --     PARAMETER           MEANING
  673. '                  LastOn$          Date of last logon
  674. '                  UPLDS$            Latest uploads
  675. '
  676. '  OUTPUTS --    NumNewFiles       How many after last logon
  677. '                RptPrefix$         Set to "At least " if
  678. '                                    above is a minimum
  679. '
  680. '  PURPOSE -- Checks how many files in UPLDS$ were uploaded on or
  681. '             after date of last logon that the user can download
  682. '
  683. * ------[ first line different ]------
  684.       SUB CountNewFiles (LastOn$,Upld(2),NumUserFiles,Text$) STATIC  ' UG070501
  685.       BaseDate = 372 * (VAL(MID$(LastOn$,7,2)) - 80) + _
  686.                   31 * (VAL(MID$(LastOn$,1,2))) + _
  687.                   VAL(MID$(LastOn$,4,2))
  688.       NumNewFiles = 1
  689.       NumUserFiles = 0
  690.       WHILE (BaseDate <= Upld(NumNewFiles,1) AND _
  691.                 Upld(NumNewFiles,1) > 0 AND _
  692.                 NumNewFiles < UBOUND(Upld,1))
  693.          IF ZUserSecLevel => Upld(NumNewFiles,2) THEN _
  694.             NumUserFiles = NumUserFiles + 1
  695.          NumNewFiles = NumNewFiles + 1
  696.       WEND
  697.       IF Upld(NumNewFiles,1) < 1 THEN _
  698.          NumNewFiles = NumNewFiles - 1
  699.       IF BaseDate <= Upld(NumNewFiles,1) AND NumNewFiles > 0 THEN _  ' UG070504
  700.          Text$ = " At Least" _                                       ' UG070501
  701.       ELSE Text$ = ""                                                ' UG070501
  702.       IF NumNewFiles = 0 THEN _                                      ' UG070501
  703.          Text$ = Text$ + " No" _                                     ' UG070501
  704.       ELSE _                                                         ' UG070501
  705.          Text$ = Text$ + STR$(NumNewFiles)                           ' UG070501
  706.       END SUB
  707. * REPLACING old line(s) by new
  708. 58162 ' $SUBTITLE: 'InitFMS - sub to initialize file management system'
  709. ' $PAGE
  710. '
  711. '  NAME    -- InitFMS
  712. '
  713. '  INPUTS  -- PARAMETER             MEANING
  714. '             ZFMSDirectory$
  715. '
  716. '  OUTPUTS -- ZCategoryName$()  ELEMENTS 1,2, POSSIBLY MORE
  717. '             ZCategoryCode$()  ELEMENTS 1,2, POSSIBLY MORE
  718. '             ZCategoryDesc$()  ELEMENTS 1,2, POSSIBLY MORE
  719. '             CategoryIndex     COUNT OF # ELEMENTS IN THE FILE
  720. '                               MANAGMENT SYSTEM
  721. '
  722. '  PURPOSE -- Subroutine to initialize the RBBS-PC File Management System
  723. '
  724.       SUB InitFMS (CategoryIndex) STATIC
  725.       Blank$ = " "
  726.       CategoryIndex = 1
  727.       ZCategoryName$(1) = "P"
  728.       ZCategoryCode$(1) = "P"
  729. * ------[ first line different ]------
  730.       ZCategoryDesc$(1) = "Personal Files"                           ' UG070501
  731.       IF ZFMSDirectory$ <> "" THEN _
  732.          CategoryIndex = CategoryIndex + 1 : _
  733.          CatN$ = ZCategoryName$(CategoryIndex) : _
  734.          CALL BreakFileName (ZFMSDirectory$,DrvPath$,CatN$,Extension$,ZFalse) : _
  735.          ZCategoryName$(CategoryIndex) = CatN$ : _
  736.          ZCategoryCode$(CategoryIndex) = "" : _
  737.          ZCategoryDesc$(CategoryIndex) = "All Uploads"_              ' UG070501
  738.       ELSE ZLimitSearchToFMS = ZFalse : _
  739.            EXIT SUB
  740.       IF ZLimitSearchToFMS OR ZMasterDirName$ = ZMainFMSDir$ THEN _
  741.          CategoryIndex = CategoryIndex + 1 : _
  742.          ZCategoryName$(CategoryIndex) = "ALL" : _
  743.          ZCategoryCode$(CategoryIndex) = "" : _
  744.          ZCategoryDesc$(CategoryIndex) = "All Files"                 ' UG070501
  745.       CALL FindIt (ZDirCatFile$)
  746.       IF NOT ZOK THEN _
  747.          EXIT SUB
  748.       WHILE NOT EOF(2)
  749.          CALL ReadParms (ZWorkAra$(),3,1)
  750.          IF ZErrCode > 0 THEN _
  751.             ZErrCode = 0 : _
  752.             CALL PScrn (ZDirCatFile$+" invalid.  Line" + STR$(CategoryIndex) + " needs 3 parms") : _
  753.             CALL DelayTime (4) _
  754.          ELSE CategoryIndex = CategoryIndex + 1 : _
  755.               ZCategoryName$(CategoryIndex) = ZWorkAra$(1) : _
  756.               CALL AraAllCaps (ZCategoryName$(),CategoryIndex) : _
  757.               ZCategoryCode$(CategoryIndex) = ZWorkAra$(2) : _
  758.               ZCategoryDesc$(CategoryIndex) = ZWorkAra$(3) : _
  759.               CatR$ = ZCategoryCode$(CategoryIndex) : _
  760.               CALL Remove (CatR$,Blank$) : _
  761.               ZCategoryCode$(CategoryIndex) = CatR$
  762.       WEND
  763.       CLOSE 2
  764.       END SUB
  765. * REPLACING old line(s) by new
  766. 58165 ' $SUBTITLE: 'DispUpDir - sub to display FMS directory'
  767. ' $PAGE
  768. '
  769. '  NAME    -- DispUpDir
  770. '
  771. '  INPUTS  -- PARAMETER             MEANING
  772. '             PassedCats$         FILE "CATEGORIES" TO BE INCLUDED IN
  773. '                                 THE SEARCH.
  774. '             SearchString$       STRING TO SEARCH ON WITHIN THE
  775. '                                 FILE "CATEGORIES" SELECTED
  776. '             SearchDate$         DATE EQUAL TO OR GREATER THAN TO BE
  777. '                                 SEARCHED FOR WITH THE "CATEGORIES"
  778. '                                 AND THE STRING TO SEARCH.
  779. '             DnldFlag            SET TO RECORD # OF LINE TO BEGIN
  780. '                                 VIEWING - 0 IF AT END
  781. '
  782. '  OUTPUTS -- DnldFlag            WHENEVER DOWNLOAD REQUESTED, SETS
  783. '                                 TO 1.  OTHERWISE LEAVES AT ZERO
  784. '  PURPOSE -- Display the files that meet the criteria selected in
  785. '             RBBS-PC upload management system on the users screen.
  786. '
  787.       SUB DispUpDir (PassedCats$,SearchString$, _
  788.                     SearchDate$,DnldFlag,AbortIndex) STATIC
  789.       IF AtEndList THEN _
  790.          AtEndList = ZFalse : _
  791.          IF DnldFlag > 0 THEN _
  792.             GOSUB 58185 : _
  793.             GOTO 58184
  794.       CALL AllCaps (SearchString$)
  795.       Blank$ = " "
  796.       ZStopInterrupts = ZFalse
  797.       Categories$ = "," + _
  798.                     PassedCats$ + _
  799.                     ","
  800.       CanDnld = (ZUserSecLevel => ZOptSec(19))
  801.       CanView = (ZUserSecLevel => ZOptSec(26))
  802.       ZJumpSupported = ZTrue
  803.       ZJumpSearching = ZFalse
  804.       GOSUB 58185
  805.       OrigDir$ = ZActiveFMSDir$
  806.       InList = (RelistAt > 0 AND ReListAt <= LastRec)
  807.       IF InList AND DnldFlag > 0 THEN _
  808.          UpldIndex = RelistAt : _
  809.          DnldFlag = 0 : _
  810.          GOTO 58179
  811.       ZJumpLast$ = ""
  812.       SearchFor$ = SearchString$
  813. * ------[ first line different ]------
  814.       ExtraPrompt$ = ""                                              ' UG070501
  815.       IF CanView THEN _                                              ' UG070501
  816.          ExtraPrompt$ = ",V)iew"                                     ' UG070501
  817.       IF ZPersonalDnld THEN _                                        ' UG070501
  818.          ExtraPrompt$ = ExtraPrompt$ + ",*)D/L New"                  ' UG070501
  819.       IF CanDnld THEN _                                              ' UG070501
  820.          ExtraPrompt$ = ExtraPrompt$ + ",M)ark,D)ownload"            ' UG070501
  821.       MaxPrint = ZPageLength - 1
  822.       BelowMinSec = (ZUserSecLevel < ZMinSecToView)
  823.       ZNonStop = ZNonStop OR (ZPageLength < 1)
  824.       FMSCheckPoint = 0
  825.       WildSearch = (INSTR(SearchString$,"?") > 0) _
  826.                      OR (INSTR(SearchString$,"*") > 0)
  827.       CALL AraAllCaps (ZUserIn$(),ZAnsIndex)
  828. 'print "zansindex=";zansindex;" zlastindex=";zlastindex;:for ii=zansindex to zlastindex: print "<";zuserin$(ii);">";:next:print " zlc=<";zlastcommand$;">";:print:INPUT XXX$
  829.       IF ZAnsIndex > 0 THEN _
  830.         IF ZLastCommand$ = "FP" AND INSTR("Ll",ZUserIn$(ZLastIndex)) = 0 THEN _
  831.             ZUserIn$(ZAnsIndex) = "D" : _
  832.             IF (UpldIndex > 0 AND UpldIndex <= LastRec) THEN _
  833.                GOTO 58180 _
  834.             ELSE Temp$ = "" : _
  835.                  GOTO 58196
  836. * REPLACING old line(s) by new
  837. 58170 IF ZExtendedOff THEN _      ' Extended description
  838.          GOTO 58168 _
  839. * ------[ first line different ]------
  840.       ELSE IF LastOK OR ZPersonalDnld THEN _                         ' UG070506
  841.          GOTO 58175 _
  842.       ELSE IF ZJumpSearching THEN _
  843.               GOTO 58187 _
  844.            ELSE IF SearchString$ <> "" AND (NOT WildSearch) AND FailedSearch THEN _
  845.                    GOTO 58187 _
  846.                 ELSE GOTO 58168
  847. * REPLACING old line(s) by new
  848. * ------[ first line different ]------
  849. 58171 IF Category$ = "***" OR ZPersonalDnld THEN _   ' display line  ' UG070506
  850.          GOTO 58176 _
  851.       ELSE HoldCat$ = "," + Category$ + "," : _
  852.            IF INSTR(Categories$,HoldCat$) > 0 THEN _
  853.               GOTO 58176 _
  854.            ELSE GOTO 58168
  855. * REPLACING old line(s) by new
  856. 58178 IF ZLinesPrinted <= MaxPrint AND (FMSCheckPoint MOD 1000 <> 0) THEN _
  857.          GOTO 58168
  858.       CALL CheckCarrier
  859.       IF ZSubParm = -1 THEN _
  860.          GOTO 58198
  861.       CALL TimeRemain (MinsRemaining)
  862.       IF MinsRemaining <= 0 THEN _
  863.          ZSubParm = -1 : _
  864.          GOTO 58198
  865.       IF ZNonStop THEN _
  866.          GOTO 58168
  867.       IF ZLinesPrinted <= MaxPrint THEN _
  868.          IF ZDateOrderedFMS THEN _
  869.             CALL QuickTPut1 (ZEmphasizeOff$ + _
  870. * ------[ first line different ]------
  871.                "Files Checked Through " + MID$(PartToPrint$,24,8) + ".") _ ' UG070501
  872.          ELSE _
  873.             CALL QuickTPut1 (ZEmphasizeOff$ + STR$(FMSCheckPoint) + _
  874.                " Files Checked.")                                    ' UG070501
  875. * REPLACING old line(s) by new
  876. 58180 WasX$ = ZUserIn$(ZAnsIndex)
  877.       CALL AllCaps (WasX$)
  878.       IF InList AND (ZAnsIndex >= ZLastIndex OR WasX$ <> "D") THEN _
  879.          ZTurboKey = -ZTurboKeyUser : _
  880.          ZStackC = ZTrue : _
  881.          CALL AskMore (ExtraPrompt$, ZTrue, ZFalse,AbortIndex,ZFalse) : _
  882.          IF ZSubParm = -1 THEN _
  883.             EXIT SUB _
  884.          ELSE ZLastIndex = ZWasQ :_
  885.               IF NOT ZNo THEN _
  886.                  ZAnsIndex = 1
  887.       IF ZSubParm = -1 THEN _
  888.          GOTO 58198
  889.       IF ZNo THEN _
  890.          ZLastIndex = 0 : _
  891. * ------[ first line different ]------
  892.          CALL QuickTPut1 (ZEmphasizeOff$) : _                        ' UG070501
  893.          GOTO 58198
  894.       WasX$ = ZUserIn$(ZAnsIndex)
  895.       CALL AllCaps (WasX$)
  896. 'print "WASX$=<";WASX$;"> zansindex=";zansindex;" zlastindex=";zlastindex;:for ii=zansindex to zlastindex: print "<";zuserin$(ii);">";:next:print:INPUT XXX$
  897.       IF WasX$ = "V" THEN IF CanView THEN _
  898.          CALL GetArc : _
  899.          ZJumpSupported = ZTrue : _
  900.          ZWasA = UpldIndex : _
  901.          GOSUB 58185 : _
  902.          UpldIndex = ZWasA : _
  903.          GOTO 58180
  904. 'print "wasx$=<";wasx$;"> candnld=";candnld;" zlc=<";zlastcommand$;"> inlist=";inlist
  905. * REPLACING old line(s) by new
  906. 58181 MarkingFiles = ZFalse
  907.       IF (WasX$ = "D" OR WasX$ = "M") THEN IF CanDnld THEN _
  908.          MarkingFiles = (WasX$ = "M") : _
  909. * ------[ first line different ]------
  910.          CALL AskItems ("DM",WasX$,ZTrue,"File",ZMarkedFiles$) : _   ' UG070501/KG062401
  911.          IF ZWasQ = 0 THEN _
  912.             GOTO 58183
  913.       IF WasX$ = "*" THEN IF ZPersonalDnld THEN _
  914.          GOTO 58193
  915. * REPLACING old line(s) by new
  916. 58183 IF ZJumpSearching THEN _
  917.          PrevSearch$ = SearchFor$ : _
  918.          SearchFor$ = ZJumpTo$ _
  919.       ELSE SearchFor$ = SearchString$ : _
  920.            IF NOT ZYes AND CanDnld THEN _
  921.               GOSUB 58188 : _
  922.               IF WasX$ <> "L" AND ZLastIndex >= ZAnsIndex AND NOT MarkingFiles THEN _
  923. * ------[ first line different ]------
  924.                  DnldFlag = 1 : _
  925.                  ReListAt = UpldIndex : _
  926.                  EXIT SUB _      ' exit for downloading
  927.               ELSE IF UpldIndex = CutoffRec THEN _
  928.                       GOTO 58184
  929.       IF ZNonStop THEN IF UpldIndex > 999 THEN _
  930.          IF (SearchDate$ = "" OR NOT ZExpertUser) THEN _
  931.             ZOutTxt$ = "There Are" + STR$(UpldIndex) + _
  932.                " Lines Left to Scan.  Really Go Non-Stop (Y,[N])" : _ ' UG070501
  933.             ZNoAdvance = ZTrue : _
  934.             ZTurboKey = -ZTurboKeyUser : _
  935.             ZSubParm = 1 : _
  936.             CALL TGet : _
  937.             CALL WipeLine (79) : _
  938.             ZNonStop = ZYes
  939.       GOTO 58168
  940. * REPLACING old line(s) by new
  941. 58184 IF ZChainedDir$ <> "" THEN _
  942.          ZActiveFMSDir$ = ZChainedDir$ : _
  943.          GOSUB 58185 : _
  944.          LastFName = 0 : _
  945.          GOTO 58168
  946. 'print "58184 ZNo=";zno;" zlistonly=";zlistonly
  947.       IF ZNo THEN _
  948. * ------[ first line different ]------
  949.          CALL QuickTput1 (ZEmphasizeOff$) : _                        ' UG070501
  950.          GOTO 58198
  951.       Temp$ = "End List. "                                           ' UG070501
  952.       AtEndList = ZTrue
  953.       UpldIndex = CutOffRec - ZUpInc
  954.       ZLastIndex = 0
  955.       GOTO 58196
  956. * REPLACING old line(s) by new
  957. 58188 IF ProcessedNew OR MarkingFiles OR NOT ZListOnly THEN _
  958.          ProcessedNew = ZFalse : _
  959.          RETURN
  960.       ZUserIn$(0) = ""
  961.       WasI = ZAnsIndex              ' check whether in dir
  962.       WHILE WasI <= ZLastIndex
  963.          CALL AraAllCaps (ZUserIn$(),WasI)
  964.          ZWasZ$ = ZUserIn$(WasI)
  965.          CALL UnMarkItems (ZMarkedFiles$,WasI,ZLastIndex,WasX,ZTrue)
  966. * ------[ first line different ]------
  967.          CALL AllCaps (ZUserIn$(WasI))                               ' UG070512
  968.          ZWasZ$ = ZUserIn$(WasI)                                     ' UG070512
  969.          Temp$ = ZUserIn$(WasI)
  970. 'print "wasi=";wasi;" temp$=<";temp$;"> Zdef=<";zdefaultxfer$;">"
  971.          IsProto = (LEN(Temp$) = 1 AND _
  972.                     INSTR(ZDefaultXfer$,Temp$) > 0)
  973.          ZOK = IsProto
  974.          WasJ = LastRec + 1
  975.          WasX = INSTR(Temp$,".")
  976.          AltTemp$ = ""
  977.          IF NOT IsProto THEN _
  978.             IF WasX = 0 THEN _
  979.                AltTemp$ = Temp$ + "." + ZDefaultExtension$ _
  980.             ELSE IF WasX = LEN(Temp$) THEN _
  981.                     AltTemp$ = LEFT$(Temp$,WasX-1)
  982. 'print "58188 b4 while zok=";zok;" wasj=";wasj;" looking for <";temp$;">"
  983.          WHILE WasJ > 1 AND NOT ZOK
  984.             WasJ = WasJ - 1
  985.             GET #2,WasJ
  986.             GOSUB 58191
  987. 'print "bk 58191 canget=";catget;" ptp<";parttoprint$;">";:input xx$
  988.             IF CanGet THEN _
  989.                MID$(PartToPrint$,13,1) = " " : _
  990.                WasX$ = LEFT$(PartToPrint$,INSTR(PartToPrint$," ") - 1) : _
  991.                ZOK = (Temp$ = WasX$) : _
  992.                IF NOT ZOK THEN _
  993.                   IF AltTemp$ <> "" THEN _
  994.                      ZOK = (AltTemp$ = WasX$)
  995.          WEND
  996. 'print "58188 aft while zok=";zok;" wasj=";wasj;" looking for <";temp$;">":input xxx$
  997.          IF ZOK THEN _
  998.             GOSUB 58189 : _
  999.             IF ZOK OR IsProto THEN _
  1000.                WasX$ = MID$(STR$(WasJ),2) : _
  1001.                ZUserIn$(0) = ZUserIn$(0) + _
  1002.                        WasX$ + _
  1003.                        SPACE$(5 - LEN(WasX$))
  1004.          IF NOT ZOK AND NOT IsProto THEN _
  1005.             CALL QuickTPut1 (ZWasZ$ + " Not Found - Omitted from Download.") : _ ' UG070501
  1006.             FOR WasK = WasI + 1 TO ZLastIndex : _
  1007.                ZUserIn$(WasK - 1) = ZUserIn$(WasK) : _
  1008.             NEXT : _
  1009.             ZLastIndex = ZLastIndex - 1 : _
  1010.             WasI = WasI - 1
  1011.          WasI = WasI + 1
  1012.       WEND
  1013.       ZWasQ = ZLastIndex
  1014. 'print "end 58188 zlastindex=";zlastindex;" zok=";zok
  1015.       RETURN
  1016. * REPLACING old line(s) by new
  1017. 58194    PersIndex = PersIndex - 1
  1018.       WEND
  1019.       IF ZLastIndex = 0 THEN _
  1020. * ------[ first line different ]------
  1021.          ZOutTxt$ = "Sorry, No New Files Found to You." : _          ' UG070501
  1022.          CALL QuickTPut2 (ZOutTxt$) : _                              ' UG070501
  1023.          GOTO 58183
  1024.       ZAnsIndex = 1
  1025.       GOTO 58183
  1026. * REPLACING old line(s) by new
  1027. 58196 CALL QuickTPut (ZEmphasizeOff$,0)
  1028. * ------[ first line different ]------
  1029.       ZOutTxt$ = Temp$ + "L)ist Again, A)bort, " + _
  1030.                  LEFT$("*)D/L New, ",-11*ZPersonalDnld) + _
  1031.                  "M)ark" + LEFT$(", D)ownload",-11*CanDnld) + _
  1032.                   LEFT$(", V)iew",-7*CanView) + _
  1033.                  ", [Q]uit"                                          ' UG070501
  1034.       ZTurboKey = -ZTurboKeyUser
  1035.       CALL UglyPopCmdStack                                           ' UG070501
  1036.       WasX$ = ZUserIn$(ZAnsIndex)
  1037.       CALL AllCaps (WasX$)
  1038.       IF WasX$ = "A" THEN ZRet = ZTrue
  1039.       IF ZWasQ = 0 OR ZRet OR ZSubParm < 0 OR WasX$ = "Q" THEN _     ' UG070501
  1040.          GOTO 58198
  1041.       IF WasX$ = "L" THEN _
  1042.          ZActiveFMSDir$ = OrigDir$ : _
  1043.          GOSUB 58185 : _
  1044.          AtEndList = ZFalse : _
  1045.          GOTO 58168
  1046.       IF WasX$ = "V" THEN IF CanView THEN _
  1047.          CALL GetArc
  1048.       ZYes = ZFalse
  1049.       GOTO 58181
  1050. * REPLACING old line(s) by new
  1051. 58198 CLOSE 2
  1052.       ZNonStop = (ZPageLength < 1)
  1053.       ZStopInterrupts = ZFalse
  1054.       ZOutTxt$ = ""
  1055.       ZActiveFMSDir$ = ""
  1056.       ZJumpSupported = ZFalse
  1057. * ------[ first line different ]------
  1058.       ZAnsIndex = ZLastIndex + 1                                     ' UG070501
  1059.       DnldFlag = 0
  1060.       EXIT SUB
  1061.       END SUB
  1062.